Networks that primarily utilize data link layer devices are often referred to as layer two (L2) networks. A data link layer device is a device that operates within the second layer of the Open Systems Interconnection (OSI) reference model, i.e., the data link layer. One example of a common L2 networks is an Ethernet network in which end point devices (e.g., servers, printers, computers) are connected by one or more Ethernet switches. The Ethernet switches forward Ethernet frames, also referred to as L2 communications or L2 packets to devices within the network. As the Ethernet switches forward the Ethernet frames the Ethernet switches learn L2 state information for the L2 network, including media access control (MAC) addressing information for the devices within the network and the physical ports through which the devices are reachable. The Ethernet switches typically store the MAC addressing information in MAC tables associated with each of their physical interfaces. When forwarding an individual Ethernet frame, an ingress port of an Ethernet switch typically broadcasts the Ethernet frame to all of the other physical ports of the switch unless the Ethernet switch has learned the specific physical port through which to the destination MAC address devices is reachable. In this case, the Ethernet switch forwards a single copy of the Ethernet frame out the associated physical port.
Virtual private local area network service (VPLS) may be used to extend two or more remote L2 networks, i.e., VPLS sites, through a network (usually referred to as a provider network), such as the Internet, in a transparent manner, i.e., as if the network does not exist. In particular, routers running VPLS instances transport layer two (L2) communications, such as Ethernet packets, between customer networks via the network. In a typical configuration, provider edge (PE) routers coupled to the customer networks (such routers will be referred to as “members of a VPLS domain”) define label switched paths (LSPs) that may be used as pseudowires within the provider network to carry encapsulated L2 communications as if these customer networks were directly attached to the same local area network (LAN).
PE routers that are members of the VPLS domain each run a VPLS instance that participates in the VPLS domain, and maintain state data for the VPLS instance including Media Access Control (MAC) addresses learned from locally attached customer sites. In addition, each PE router also maintains state data specifying MAC addresses that belong to remote customer sites that are attached to remote PE routers. The VPLS PE routers dynamically learn MAC addresses of remote customer sites over the pseudowires that are established among all the VPLS PE routers.
There is a growing need for support of multicast-based services such as Internet Protocol (IP) television (TV). Customer routers are now likely running IP multicast protocols, and routers and connected switches associated with the VPLS will be handling a large amount of multicast traffic. Many current VPLS solutions perform replication for multicast traffic at the ingress PE routers. In many current VPLS solutions, L2 multicast traffic is treated as broadcast traffic and is flooded to every site in the VPLS domain. That is, a PE router may simply broadcast all multicast Ethernet frames over all corresponding attachment circuits (ACs) and pseudowires (PWs) originating from the PE router for the VPLS domain. Such a technique has the advantage of keeping P and PE routers completely unaware of IP multicast-specific issues.
However, flooding L2 multicast traffic to every site in a VPLS domain has scalability drawbacks in terms of bandwidth waste, which can lead to increased cost in large-scale deployment. For example, when L2 multicast traffic is broadcast to all PE routers in a VPLS domain, multicast traffic may be sent to sites with no members in the multicast group, i.e., subscribers that desire the multicast traffic. This may happen, for example, when an upstream PE does not maintain downstream membership information. In this case, the upstream PE simply floods L2 multicast frames to all downstream PE routers, and downstream PE routers forward them to directly connected CE routers; however, those CE routers might not service subscriber devices that are members of the specific multicast group associated with the multicast traffic. This unnecessary traffic may result in adverse pressure on customer resources, and can also require wasteful over-provisioning by Service Providers to cover such traffic. As another example, when multicast is broadcast to all PE routers in a VPLS domain, this can result in replication of traffic on PWs that share a physical path. This replication is often inefficient in terms of bandwidth usage if those PWs traverse shared physical links in a backbone network of the service provider.
One way in which certain VPLS deployments seek to reduce broadcast multicast traffic is to configure the routers to snoop on L3 signaling message to determine L3 information for which VPLS sites are interested in which particular multicast groups. When forwarding the L2 multicast frames, the routers examine the L3 information within the encapsulated L3 multicast control packets to influence the forwarding decisions. This examination is called “snooping” (e.g., Protocol Independent Multicast (PIM) or Internet Group Management Protocol (IGMP) snooping, for instance). The multicast data packets are then forwarded on the basis of their L3 addresses. However, such an approach can be viewed as a violation of L2 forwarding principles and may lead to inefficiencies in state information maintained by the routers.